#ifndef ALLOWANCE_TYPE_H
#define ALLOWANCE_TYPE_H

#include "allowance_type_struct_csv.hpp"

class allowance_type
{
  public:
	inline virtual ~allowance_type() { }

  private:
};



// implementation for csv files

class allowance_type_csv: public allowance_type
{
  public:
	allowance_type_csv(char* filename): file(filename)
	{ }
	
	allowance_type_csv(std::string filename): file(filename)
	{ }
	
	// find number of listed allowance types
	static int num();	

	static allowance_type_struct_csv const find(int _id);
	
  protected:	
	static int max_num(int _num=0);

  private:
	std::string file;	
};

#endif
